Buscar elementos de una lista en C++ [116]
En este tutorial vamos a buscar elementos de una lista en C++ siguiendo estos pasos:
- Clonamos la lista en la variable actual.
- Hacer un ciclo hasta que actual sea null.
- Determinar si el elemento está en la lista.
Codigo: https://github.com/programadornovato/c-/commit/69e5b70f07ce3bf7574c7bc5b23d87a5a2be48d8
#include <iostream> struct Nodo { int dato; Nodo *siguiente; }; void insertarNodoLista(Nodo *&lista,int dato); void mostrarNodoLista(Nodo *&lista); bool buscarNodoLista(Nodo *&lista,int buscar); int main(){ int dato; char respuesta; Nodo *lista=NULL; regresar: std::cout<<"Ingresa un dato en la lista: "; std::cin>>dato; insertarNodoLista(lista,dato); std::cout<<"Deseas insertar otro dato (s/n):"; std::cin>>respuesta; if(respuesta=='s' || respuesta=='S'){ goto regresar; } mostrarNodoLista(lista); std::cout<<"Numero a buscar: "; std::cin>>dato; if(buscarNodoLista(lista,dato)==true){ std::cout<<"El valor "<<dato<<" si esta en la lista\n"; } else{ std::cout<<"El valor "<<dato<<" no esta en la lista\n"; } system("pause"); return 0; } void insertarNodoLista(Nodo *&lista,int dato){ Nodo *nuevoNodo=new Nodo(); nuevoNodo->dato=dato; Nodo *aux1=lista; Nodo *aux2; while ( (aux1!=NULL) && (aux1->dato<dato) ){ aux2=aux1; aux1=aux1->siguiente; } if(lista==aux1){ lista=nuevoNodo; nuevoNodo->siguiente=aux1; }else{ aux2->siguiente=nuevoNodo; nuevoNodo->siguiente=aux1; } std::cout<<"El dato "<<dato<<" se ha insertado\n"; } void mostrarNodoLista(Nodo *&lista){ Nodo *actual=new Nodo(); actual=lista; while (actual!=NULL) { std::cout<<"Valor del nodo es "<<actual->dato<<"\n"; actual=actual->siguiente; } } bool buscarNodoLista(Nodo *&lista,int buscar){ bool encontrado=false; Nodo *actual=new Nodo(); actual=lista; while ( (actual!=NULL) && (actual->dato<=buscar) ) { if(actual->dato==buscar){ encontrado=true; } actual=actual->siguiente; } return encontrado; }
🎦 [Curso] Visual Studio Code 🆚 de 0 a 100: https://www.youtube.com/playlist?list=PLCTD_CpMeEKQbdlT8efsS-veXuvYZ1UWn
📦 Descargar zip con todos los codigos: http://raboninco.com/bXZK
🎦 [CURSO] C++ DE 0 A HEROE: https://www.youtube.com/playlist?list=PLCTD_CpMeEKTofxs7iottRxJ5YPM7BOcc
🎦 [Curso] Visual Studio Code 🆚 de 0 a 100: https://www.youtube.com/playlist?list=PLCTD_CpMeEKQbdlT8efsS-veXuvYZ1UWn
Gracias por apoyar este canal: https://www.patreon.com/programadornovato
🔗 Facebook: https://facebook.com/ProgramadorNovatoOficial
🔗 Twitter: https://twitter.com/programadornova
🔗 Linkedin: https://www.linkedin.com/in/programadornovato/
🔗 Instagram: https://www.instagram.com/programadornovato/
🔗 Pagina oficial: https://www.programadornovato.com
<<Anterior tutorial Siguiente tutorial >>